Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move ConstraintSource back to cabal-install. #9642

Draft
wants to merge 18 commits into
base: master
Choose a base branch
from

Conversation

andreabedini
Copy link
Collaborator

Braching off this discussion: #9578 (comment)

The solver should not know anything about project configuration as it is only a cabal-install concept. The caller should instead be able to add arbitrary annotation to the global constraints it passes to the solver.

@andreabedini
Copy link
Collaborator Author

This uses a existential type but I am not convinced this is the right approach.

Using a type variable would be much simpler but it looked a bit too invasive since the new parameter ends up propagating to Tree, which is used everywhere.

@andreabedini
Copy link
Collaborator Author

@mpickering Can I ask for your opinion on this?

alt-romes and others added 16 commits March 4, 2024 10:30
We must consider the path to the installed build-tool before the path to
existing versions of the build tool in paths such as `extra-prog-path`
or in the system path.

This was previously fixed by haskell#8972 but undone by haskell#9527.

This also renames `appendProgramSearchPath` to
`prependProgramSearchPath` to describe correctly what that function
does.

Fixes haskell#9756

(cherry picked from commit 84c30c2)
Find build-tool installed programs before programs in path (backport haskell#9762)
`extra-doc-files` and `no-autogen-paths` warnings.

(cherry picked from commit 28daab1)
- generated with
     git log --pretty=oneline --no-color cabal-install-v3.10.1.0..HEAD > 3.12.prlog
- deduped
- stored WIP “release notes” file for future `cabal-install` release
* Add tests for haskell#9742

`main-is` not picked up when inside a multibranch CondNode.

* Fix comments

* Add simplifyBranch to Distribution.Types.CondTree

Goes hand in hand with with simplifyCondTree.

* Make `check` deal correctly with multiple branches

`cabal check` had a problem recognising fields in presence of
multiple branches. This patch fixes the problem and does not
meaningfully increases CI time of particularly taxing tests
(like “duplicate flagged dependencies” from MemoryUsage).

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit 74b1f21)
Make `check` recognise `main-is` in conditional branches (backport haskell#9768)
Per https://github.com/haskell/cabal/wiki/Updating-the-license-list
to version 3.23 (2024-02-08) of SPDX License List.
* Bump version numbers for 3.12.0.0

Version fields, constraints, licences, and bootstrap.

☞ N.B.:
- This commit removes 8.10.7 from bootstrap list.
- This release only deals with Cabal, not cabal-install.

* Update index state in cabal.project.release

This is needed since we need the new (0.6.2.5) release of
hackage-security.

* Regenerate bootstrap .json files
This provides temporary life support to the `validate-old-ghcs` action
until node16 will be finally axed by GHA in May 2024.

Workaround for:
- haskell#9858

(cherry picked from commit 2da8b2f)
Bump time upper bound to acccomodate 1.14 (backport haskell#9848)
`cabal init` text for BSD-2-Clause and BSD-3-Clause licence differed
slightly from the one published at SPDX. [1] [2]

This caused some problems to users when dealing with licence-recognition
software. [3]

[1] https://spdx.org/licenses/BSD-2-Clause.html
[2] https://spdx.org/licenses/BSD-3-Clause.html
[3] https://discourse.haskell.org/t/non-standard-license-generated-by-stack-new/9059

(cherry picked from commit 1e86730)
Conform BSD-2-Clause and BSD-3-Clause text to SPDX (backport haskell#9813)
Braching off the discussion at haskell#9578 (comment)

The solver should not know anything about project configuration as it is
only a cabal-install concept.  The caller should instead be able to add
arbitrary annotation to the global constraints it passes to the solver.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants